package edu.northwestern.cbits.purple_robot_manager.db;
import edu.northwestern.cbits.purple_robot_manager.R;
import android.content.ContentProvider;
import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.net.Uri;
public class DistancesProvider extends ContentProvider
{
public static final Uri CONTENT_URI = Uri
.parse("content://edu.northwestern.cbits.purple_robot_manager.distances/distances");
private final static String DB_NAME = "distance_history";
private static final String TABLE_NAME = "distances";
public final static String NAME = "name";
public final static String DISTANCE = "distance";
public final static String TIMESTAMP = "timestamp";
private static final int DATABASE_VERSION = 1;
private SQLiteOpenHelper _openHelper = null;
public int delete(Uri arg0, String selection, String[] selectionArgs)
{
SQLiteDatabase db = this._openHelper.getWritableDatabase();
return db.delete(DistancesProvider.DB_NAME, selection, selectionArgs);
}
public String getType(Uri arg0)
{
return "vnd.android.cursor.item/vnd.purple-bot.distance";
}
public Uri insert(Uri uri, ContentValues values)
{
SQLiteDatabase db = this._openHelper.getWritableDatabase();
db.insert(DistancesProvider.DB_NAME, null, values);
return uri;
}
public boolean onCreate()
{
final DistancesProvider me = this;
this._openHelper = new SQLiteOpenHelper(this.getContext(), DistancesProvider.TABLE_NAME, null,
DistancesProvider.DATABASE_VERSION)
{
public void onCreate(SQLiteDatabase db)
{
Context context = me.getContext().getApplicationContext();
db.execSQL(context.getString(R.string.create_distances_table));
this.onUpgrade(db, 0, DistancesProvider.DATABASE_VERSION);
}
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion)
{
switch (oldVersion)
{
case 1:
case 2:
// db.execSQL(context.getString(R.string.upgrade_issues_add_reprint));
default:
break;
}
}
};
return false;
}
public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs, String orderBy)
{
SQLiteDatabase db = this._openHelper.getReadableDatabase();
return db.query(DistancesProvider.DB_NAME, projection, selection, selectionArgs, null, null, orderBy);
}
public int update(Uri arg0, ContentValues arg1, String arg2, String[] arg3)
{
return 0;
}
}